using System.Collections.Generic;
using Admin.NET.Application.Service.LKL.Dto.KeTuo;
using Admin.NET.Core;
using SqlSugar;

namespace Admin.NET.Application.Entity.Business;

[SugarTable("UserMerchantKT", "商户表")]
[SysTable]
public class UserMerchantKT : EntityTenant
{
	/// <summary>
	/// 状态 商户状态 OPEN:开通，CLOSE:关闭，LOSS:流失,WAIT_AUDI:审核中,REJECT:审核拒绝,REVIEW_FAIL:复核失败, REVIEW_AUDIT:复核审核中,ACTIVITY:激
	/// </summary>
	public string status { get; set; }

	/// <summary>
	/// 支付编号
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string ExternalCustomerNo { get; set; }

	[SugarColumn(IsNullable = true)]
	public string? MerChId { get; set; }

	[SugarColumn(IsNullable = true)]
	public long? UserId { get; set; }

	/// <summary>
	/// 结算人账户名称
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string accountName { get; set; }

	/// <summary>
	/// 结算人银行卡号
	/// </summary>
	public string accountNo { get; set; }

	/// <summary>
	/// 结算账户类型 57 对公 58 对私
	/// </summary>
	public string accountType { get; set; }

	/// <summary>
	/// 附件信息集
	/// </summary>
	[SugarColumn(IsJson = true, ColumnDataType = "jsonb", IsNullable = true)]
	public List<Attchments> attchments { get; set; }

	/// <summary>
	/// 业务扩展信息
	/// </summary>
	[SugarColumn(IsJson = true, ColumnDataType = "jsonb", IsNullable = true)]
	public BizContent bizContent { get; set; }

	/// <summary>
	/// 业务类型 ,B2B_SYT:B2B收银台
	/// </summary>
	public string busiCode { get; set; }

	/// <summary>
	/// 商户经营内容 营业执照上的经营内容
	/// </summary>
	[SugarColumn(ColumnDataType = "text")]
	public string businessContent { get; set; }

	/// <summary>
	/// 市代码
	/// </summary>
	public string cityCode { get; set; }

	/// <summary>
	/// 结算账户清算⾏号
	/// </summary>
	public string clearingBankCode { get; set; }

	/// <summary>
	/// 商户联系⼈⼿机号码
	/// </summary>
	public string contactMobile { get; set; }

	/// <summary>
	/// 商户联系⼈姓名
	/// </summary>
	public string contactName { get; set; }

	/// <summary>
	/// 区县代码
	/// </summary>
	public string countyCode { get; set; }

	/// <summary>
	/// 商户邮箱
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string email { get; set; }

	[SugarColumn(IsNullable = true)]
	public string provinceName { get; set; }

	[SugarColumn(IsNullable = true)]
	public string cityName { get; set; }

	[SugarColumn(IsNullable = true)]
	public string countyName { get; set; }

	/// <summary>
	/// 法⼈证件号码
	/// </summary>
	public string larIdCard { get; set; }

	/// <summary>
	/// 法⼈证件过期时间格式yyyy-MM-dd 长期传：9999-12-31
	/// </summary>
	public string larIdCardEnd { get; set; }

	/// <summary>
	/// 法⼈证件开始⽇期 格式yyyy-MM-dd
	/// </summary>
	public string larIdCardStart { get; set; }

	/// <summary>
	/// 法⼈证件类型 01
	/// </summary>
	public string larIdType { get; set; }

	/// <summary>
	/// 法⼈姓名
	/// </summary>
	public string larName { get; set; }

	/// <summary>
	/// 经度
	/// </summary>
	public string latitude { get; set; }

	/// <summary>
	/// 商户详细地址 去掉省， 市区后的详细地址
	/// </summary>
	public string merAddr { get; set; }

	/// <summary>
	/// 商户名称(经营名称  不能少于七个中文
	/// </summary>
	public string merName { get; set; }

	/// <summary> 
	/// 商户注册名称 四至二十个中文
	/// </summary>
	public string merRegName { get; set; }

	/// <summary>
	/// 商户注册类型 TP_MERCHANT:企业 TP_PERSONAL:⼩微个⼈
	/// </summary>
	public string merType { get; set; }

	/// <summary>
	/// 结算账户开户⾏号
	/// </summary>
	public string openningBankCode { get; set; }

	/// <summary>
	/// 结算账户开户⾏名称
	/// </summary>
	public string openningBankName { get; set; }

	/// <summary>
	/// 结算信息省份代码
	/// </summary>
	public string settleProvinceCode { get; set; }

	/// <summary>
	/// 结算信息省份名称
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string settleProvinceName { get; set; }

	/// <summary>
	/// 结算信息城市代码
	/// </summary>
	public string settleCityCode { get; set; }

	/// <summary>
	/// 结算信息城市名称
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string settleCityName { get; set; }

	/// <summary>
	/// 省代码
	/// </summary>
	public string provinceCode { get; set; }

	/// <summary>
	/// 结算类型 D0秒到 D1次日结算
	/// </summary>
	public string settleType { get; set; }

	/// <summary>
	/// 进件来源 APP, H5 （2选1）
	/// </summary>
	public string source { get; set; }

	/// <summary>
	/// 商户归属用户信息 合作机构信息 由拓客SAAS提供
	/// </summary>
	public int userNo { get; set; }

	/// <summary>
	/// 营业执照名称
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string licenseName { get; set; }

	/// <summary>
	/// 营业执照号码
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string licenseNo { get; set; }

	/// <summary>
	/// 业执照开始时间
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string licenseDtStart { get; set; }

	/// <summary>
	/// 营业执照过期时间
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string licenseDtEnd { get; set; }

	/// <summary>
	/// 结算方式 MANUAL:手动结算(结算至拉卡拉APP钱包),AUTOMATIC:自动结算,REGULAR:定时结算（仅企业商户支  持）
	/// </summary>
	public string settlementType { get; set; }

	/// <summary>
	/// 定时结算时  间定时结算必传 格式为 HHmm 例如结算时间为下午3点 传入值为 1500
	/// </summary>
	public int regularSettlementTime { get; set; }

	/// <summary>
	/// 内部商户号
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? InnerNo { get; set; }

	/// <summary>
	/// 微信code
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? WeChartCode { get; set; }

	/// <summary>
	/// 支付宝code
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? AliPayCode { get; set; }

	/// <summary>
	/// 微信code异常信息
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? WeChartCodeErrMsg { get; set; }

	/// <summary>
	/// 支付宝code异常信息
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? AliPayCodeErrMsg { get; set; }

	/// <summary>
	/// 微信code二维码
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? WeChartCodeQR { get; set; }

	/// <summary>
	/// 支付宝code二维码
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? AliPayCodeQR { get; set; }

	/// <summary>
	/// 支付宝子商户
	/// </summary>
	[SugarColumn(IsNullable = true)]
	public string? AliSubPayCode { get; set; }
}
